<?php
/*
 * estudo de padrões de projetos com php
 * author: fabricio s costa
 * version: 1.0
 * site: http://fabriciojf.com
 */

require_once('com/fabriciojf/action/Action.class.php');
require_once('com/fabriciojf/persistence/PostDAO.class.php');
require_once('com/fabriciojf/persistence/CategoriaDAO.class.php');
require_once('com/fabriciojf/security/Permission.class.php');

class SalvarPostAction implements Action {
    public function execute() {
        Permission::requireInRole(array('admin'));

        $categoria = new CategoriaDAO();

        // instancio a classe Agenda
        $post = new Post();
        $post->setTitulo($_POST['titulo']);
        $post->setConteudo($_POST['conteudo']);
        $post->setCategoria($categoria->findForId(1));
        $post->setTipo($_POST['tipo']);
        $post->setDataCriacao(('Y-m-d H:i:s'));

        // instancio a classe Data Access Object para Agenda
        $dao = new PostDAO();
        if ($dao->save($post)) {
            FrontController::sendRedirect('Home');
        } else {
            FrontController::sendRedirect('Home');
        }
    }
}
?>
